| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200 |
- // Copyright 2023 The Libc Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
- //go:build linux && (amd64 || arm64 || loong64 || ppc64le || s390x || riscv64 || 386 || arm)
- package libc // import "modernc.org/libc"
- import (
- "math"
- "reflect"
- "sync/atomic"
- "unsafe"
- )
- // VaList fills a varargs list at p with args and returns p. The list must
- // have been allocated by caller and it must not be in Go managed memory, ie.
- // it must be pinned. Caller is responsible for freeing the list.
- //
- // This function supports code generated by ccgo/v4.
- //
- // Note: The C translated to Go varargs ABI alignment for all types is 8 on all
- // architectures.
- func VaList(p uintptr, args ...interface{}) (r uintptr) {
- if p&7 != 0 {
- panic("internal error")
- }
- r = p
- for _, v := range args {
- switch x := v.(type) {
- case int:
- *(*int64)(unsafe.Pointer(p)) = int64(x)
- case int32:
- *(*int64)(unsafe.Pointer(p)) = int64(x)
- case int64:
- *(*int64)(unsafe.Pointer(p)) = x
- case uint:
- *(*uint64)(unsafe.Pointer(p)) = uint64(x)
- case uint16:
- *(*uint64)(unsafe.Pointer(p)) = uint64(x)
- case uint32:
- *(*uint64)(unsafe.Pointer(p)) = uint64(x)
- case uint64:
- *(*uint64)(unsafe.Pointer(p)) = x
- case float64:
- *(*float64)(unsafe.Pointer(p)) = x
- case uintptr:
- *(*uintptr)(unsafe.Pointer(p)) = x
- default:
- sz := reflect.TypeOf(v).Size()
- copy(unsafe.Slice((*byte)(unsafe.Pointer(p)), sz), unsafe.Slice((*byte)(unsafe.Pointer((*[2]uintptr)(unsafe.Pointer(&v))[1])), sz))
- p += roundup(sz, 8)
- continue
- }
- p += 8
- }
- return r
- }
- // Bool returns v as a non-constant boolean value.
- func Bool(v bool) bool { return v }
- func Bool32(b bool) int32 {
- if b {
- return 1
- }
- return 0
- }
- func roundup(n, to uintptr) uintptr {
- if r := n % to; r != 0 {
- return n + to - r
- }
- return n
- }
- func VaOther(app *uintptr, sz uint64) (r uintptr) {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- r = ap
- ap = roundup(ap+uintptr(sz), 8)
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return r
- }
- func VaInt32(app *uintptr) int32 {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- ap = roundup(ap, 8)
- v := int32(*(*int64)(unsafe.Pointer(ap)))
- ap += 8
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return v
- }
- func VaUint32(app *uintptr) uint32 {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- ap = roundup(ap, 8)
- v := uint32(*(*uint64)(unsafe.Pointer(ap)))
- ap += 8
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return v
- }
- func VaInt64(app *uintptr) int64 {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- ap = roundup(ap, 8)
- v := *(*int64)(unsafe.Pointer(ap))
- ap += 8
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return v
- }
- func VaUint64(app *uintptr) uint64 {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- ap = roundup(ap, 8)
- v := *(*uint64)(unsafe.Pointer(ap))
- ap += 8
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return v
- }
- func VaFloat32(app *uintptr) float32 {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- ap = roundup(ap, 8)
- v := *(*float64)(unsafe.Pointer(ap))
- ap += 8
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return float32(v)
- }
- func VaFloat64(app *uintptr) float64 {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- ap = roundup(ap, 8)
- v := *(*float64)(unsafe.Pointer(ap))
- ap += 8
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return v
- }
- func VaUintptr(app *uintptr) uintptr {
- ap := *(*uintptr)(unsafe.Pointer(app))
- if ap == 0 {
- return 0
- }
- ap = roundup(ap, 8)
- v := *(*uintptr)(unsafe.Pointer(ap))
- ap += 8
- *(*uintptr)(unsafe.Pointer(app)) = ap
- return v
- }
- func AtomicStoreNUint8(ptr uintptr, val uint8, memorder int32) {
- a_store_8(ptr, int8(val))
- }
- func AtomicStorePInt8(addr uintptr, val int8) int8 {
- a_store_8(addr, val)
- return val
- }
- func AtomicStorePUint8(addr uintptr, val byte) byte {
- a_store_8(addr, int8(val))
- return val
- }
- func AtomicStorePInt32(addr uintptr, val int32) int32 {
- atomic.StoreInt32((*int32)(unsafe.Pointer(addr)), val)
- return val
- }
- func AtomicStorePInt64(addr uintptr, val int64) int64 {
- atomic.StoreInt64((*int64)(unsafe.Pointer(addr)), val)
- return val
- }
- func AtomicStorePUint32(addr uintptr, val uint32) uint32 {
- atomic.StoreUint32((*uint32)(unsafe.Pointer(addr)), val)
- return val
- }
- func AtomicStorePUint64(addr uintptr, val uint64) uint64 {
- atomic.StoreUint64((*uint64)(unsafe.Pointer(addr)), val)
- return val
- }
- func AtomicStorePUintptr(addr uintptr, val uintptr) uintptr {
- atomic.StoreUintptr((*uintptr)(unsafe.Pointer(addr)), val)
- return val
- }
- func AtomicStorePFloat32(addr uintptr, val float32) float32 {
- atomic.StoreUint32((*uint32)(unsafe.Pointer(addr)), math.Float32bits(val))
- return val
- }
- func AtomicStorePFloat64(addr uintptr, val float64) float64 {
- atomic.StoreUint64((*uint64)(unsafe.Pointer(addr)), math.Float64bits(val))
- return val
- }
- func AtomicLoadPInt8(addr uintptr) (val int8) {
- return a_load_8(addr)
- }
- func AtomicLoadPInt16(addr uintptr) (val int16) {
- return a_load_16(addr)
- }
- func AtomicLoadPInt32(addr uintptr) (val int32) {
- return atomic.LoadInt32((*int32)(unsafe.Pointer(addr)))
- }
- func AtomicLoadPInt64(addr uintptr) (val int64) {
- return atomic.LoadInt64((*int64)(unsafe.Pointer(addr)))
- }
- func AtomicLoadPUint8(addr uintptr) byte {
- return byte(a_load_8(addr))
- }
- func AtomicLoadPUint16(addr uintptr) uint16 {
- return uint16(a_load_16(addr))
- }
- func AtomicLoadPUint32(addr uintptr) (val uint32) {
- return atomic.LoadUint32((*uint32)(unsafe.Pointer(addr)))
- }
- func AtomicLoadPUint64(addr uintptr) (val uint64) {
- return atomic.LoadUint64((*uint64)(unsafe.Pointer(addr)))
- }
- func AtomicLoadPUintptr(addr uintptr) (val uintptr) {
- return atomic.LoadUintptr((*uintptr)(unsafe.Pointer(addr)))
- }
- func AtomicLoadPFloat32(addr uintptr) (val float32) {
- return math.Float32frombits(atomic.LoadUint32((*uint32)(unsafe.Pointer(addr))))
- }
- func AtomicLoadPFloat64(addr uintptr) (val float64) {
- return math.Float64frombits(atomic.LoadUint64((*uint64)(unsafe.Pointer(addr))))
- }
- func AtomicStoreNUint16(ptr uintptr, val uint16, memorder int32) {
- a_store_16(ptr, val)
- }
- func AtomicStoreNInt32(ptr uintptr, val int32, memorder int32) {
- atomic.StoreInt32((*int32)(unsafe.Pointer(ptr)), val)
- }
- func AtomicStoreNInt64(ptr uintptr, val int64, memorder int32) {
- atomic.StoreInt64((*int64)(unsafe.Pointer(ptr)), val)
- }
- func AtomicStoreNUint32(ptr uintptr, val uint32, memorder int32) {
- atomic.StoreUint32((*uint32)(unsafe.Pointer(ptr)), val)
- }
- func AtomicStoreNUint64(ptr uintptr, val uint64, memorder int32) {
- atomic.StoreUint64((*uint64)(unsafe.Pointer(ptr)), val)
- }
- func AtomicStoreNUintptr(ptr uintptr, val uintptr, memorder int32) {
- atomic.StoreUintptr((*uintptr)(unsafe.Pointer(ptr)), val)
- }
- func AtomicLoadNUint8(ptr uintptr, memorder int32) uint8 {
- return byte(a_load_8(ptr))
- }
- func AtomicLoadNUint16(ptr uintptr, memorder int32) uint16 {
- return uint16(a_load_16(ptr))
- }
- func AtomicLoadNInt32(ptr uintptr, memorder int32) int32 {
- return atomic.LoadInt32((*int32)(unsafe.Pointer(ptr)))
- }
- func AtomicLoadNInt64(ptr uintptr, memorder int32) int64 {
- return atomic.LoadInt64((*int64)(unsafe.Pointer(ptr)))
- }
- func AtomicLoadNUint32(ptr uintptr, memorder int32) uint32 {
- return atomic.LoadUint32((*uint32)(unsafe.Pointer(ptr)))
- }
- func AtomicLoadNUint64(ptr uintptr, memorder int32) uint64 {
- return atomic.LoadUint64((*uint64)(unsafe.Pointer(ptr)))
- }
- func AtomicLoadNUintptr(ptr uintptr, memorder int32) uintptr {
- return atomic.LoadUintptr((*uintptr)(unsafe.Pointer(ptr)))
- }
- func AssignInt8(p *int8, v int8) int8 { *p = v; return v }
- func AssignInt16(p *int16, v int16) int16 { *p = v; return v }
- func AssignInt32(p *int32, v int32) int32 { *p = v; return v }
- func AssignInt64(p *int64, v int64) int64 { *p = v; return v }
- func AssignUint8(p *uint8, v uint8) uint8 { *p = v; return v }
- func AssignUint16(p *uint16, v uint16) uint16 { *p = v; return v }
- func AssignUint32(p *uint32, v uint32) uint32 { *p = v; return v }
- func AssignUint64(p *uint64, v uint64) uint64 { *p = v; return v }
- func AssignFloat32(p *float32, v float32) float32 { *p = v; return v }
- func AssignFloat64(p *float64, v float64) float64 { *p = v; return v }
- func AssignComplex64(p *complex64, v complex64) complex64 { *p = v; return v }
- func AssignComplex128(p *complex128, v complex128) complex128 { *p = v; return v }
- func AssignUintptr(p *uintptr, v uintptr) uintptr { *p = v; return v }
- func AssignPtrInt8(p uintptr, v int8) int8 { *(*int8)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrInt16(p uintptr, v int16) int16 { *(*int16)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrInt32(p uintptr, v int32) int32 { *(*int32)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrInt64(p uintptr, v int64) int64 { *(*int64)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrUint8(p uintptr, v uint8) uint8 { *(*uint8)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrUint16(p uintptr, v uint16) uint16 { *(*uint16)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrUint32(p uintptr, v uint32) uint32 { *(*uint32)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrUint64(p uintptr, v uint64) uint64 { *(*uint64)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrFloat32(p uintptr, v float32) float32 { *(*float32)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrFloat64(p uintptr, v float64) float64 { *(*float64)(unsafe.Pointer(p)) = v; return v }
- func AssignPtrComplex64(p uintptr, v complex64) complex64 {
- *(*complex64)(unsafe.Pointer(p)) = v
- return v
- }
- func AssignPtrComplex128(p uintptr, v complex128) complex128 {
- *(*complex128)(unsafe.Pointer(p)) = v
- return v
- }
- func AssignPtrUintptr(p uintptr, v uintptr) uintptr { *(*uintptr)(unsafe.Pointer(p)) = v; return v }
- func AssignMulInt8(p *int8, v int8) int8 { *p *= v; return *p }
- func AssignMulInt16(p *int16, v int16) int16 { *p *= v; return *p }
- func AssignMulInt32(p *int32, v int32) int32 { *p *= v; return *p }
- func AssignMulInt64(p *int64, v int64) int64 { *p *= v; return *p }
- func AssignMulUint8(p *uint8, v uint8) uint8 { *p *= v; return *p }
- func AssignMulUint16(p *uint16, v uint16) uint16 { *p *= v; return *p }
- func AssignMulUint32(p *uint32, v uint32) uint32 { *p *= v; return *p }
- func AssignMulUint64(p *uint64, v uint64) uint64 { *p *= v; return *p }
- func AssignMulFloat32(p *float32, v float32) float32 { *p *= v; return *p }
- func AssignMulFloat64(p *float64, v float64) float64 { *p *= v; return *p }
- func AssignMulComplex64(p *complex64, v complex64) complex64 { *p *= v; return *p }
- func AssignMulComplex128(p *complex128, v complex128) complex128 { *p *= v; return *p }
- func AssignMulUintptr(p *uintptr, v uintptr) uintptr { *p *= v; return *p }
- func AssignDivInt8(p *int8, v int8) int8 { *p /= v; return *p }
- func AssignDivInt16(p *int16, v int16) int16 { *p /= v; return *p }
- func AssignDivInt32(p *int32, v int32) int32 { *p /= v; return *p }
- func AssignDivInt64(p *int64, v int64) int64 { *p /= v; return *p }
- func AssignDivUint8(p *uint8, v uint8) uint8 { *p /= v; return *p }
- func AssignDivUint16(p *uint16, v uint16) uint16 { *p /= v; return *p }
- func AssignDivUint32(p *uint32, v uint32) uint32 { *p /= v; return *p }
- func AssignDivUint64(p *uint64, v uint64) uint64 { *p /= v; return *p }
- func AssignDivFloat32(p *float32, v float32) float32 { *p /= v; return *p }
- func AssignDivFloat64(p *float64, v float64) float64 { *p /= v; return *p }
- func AssignDivComplex64(p *complex64, v complex64) complex64 { *p /= v; return *p }
- func AssignDivComplex128(p *complex128, v complex128) complex128 { *p /= v; return *p }
- func AssignDivUintptr(p *uintptr, v uintptr) uintptr { *p /= v; return *p }
- func AssignRemInt8(p *int8, v int8) int8 { *p %= v; return *p }
- func AssignRemInt16(p *int16, v int16) int16 { *p %= v; return *p }
- func AssignRemInt32(p *int32, v int32) int32 { *p %= v; return *p }
- func AssignRemInt64(p *int64, v int64) int64 { *p %= v; return *p }
- func AssignRemUint8(p *uint8, v uint8) uint8 { *p %= v; return *p }
- func AssignRemUint16(p *uint16, v uint16) uint16 { *p %= v; return *p }
- func AssignRemUint32(p *uint32, v uint32) uint32 { *p %= v; return *p }
- func AssignRemUint64(p *uint64, v uint64) uint64 { *p %= v; return *p }
- func AssignRemUintptr(p *uintptr, v uintptr) uintptr { *p %= v; return *p }
- func AssignAddInt8(p *int8, v int8) int8 { *p += v; return *p }
- func AssignAddInt16(p *int16, v int16) int16 { *p += v; return *p }
- func AssignAddInt32(p *int32, v int32) int32 { *p += v; return *p }
- func AssignAddInt64(p *int64, v int64) int64 { *p += v; return *p }
- func AssignAddUint8(p *uint8, v uint8) uint8 { *p += v; return *p }
- func AssignAddUint16(p *uint16, v uint16) uint16 { *p += v; return *p }
- func AssignAddUint32(p *uint32, v uint32) uint32 { *p += v; return *p }
- func AssignAddUint64(p *uint64, v uint64) uint64 { *p += v; return *p }
- func AssignAddFloat32(p *float32, v float32) float32 { *p += v; return *p }
- func AssignAddFloat64(p *float64, v float64) float64 { *p += v; return *p }
- func AssignAddComplex64(p *complex64, v complex64) complex64 { *p += v; return *p }
- func AssignAddComplex128(p *complex128, v complex128) complex128 { *p += v; return *p }
- func AssignAddUintptr(p *uintptr, v uintptr) uintptr { *p += v; return *p }
- func AssignSubInt8(p *int8, v int8) int8 { *p -= v; return *p }
- func AssignSubInt16(p *int16, v int16) int16 { *p -= v; return *p }
- func AssignSubInt32(p *int32, v int32) int32 { *p -= v; return *p }
- func AssignSubInt64(p *int64, v int64) int64 { *p -= v; return *p }
- func AssignSubUint8(p *uint8, v uint8) uint8 { *p -= v; return *p }
- func AssignSubUint16(p *uint16, v uint16) uint16 { *p -= v; return *p }
- func AssignSubUint32(p *uint32, v uint32) uint32 { *p -= v; return *p }
- func AssignSubUint64(p *uint64, v uint64) uint64 { *p -= v; return *p }
- func AssignSubFloat32(p *float32, v float32) float32 { *p -= v; return *p }
- func AssignSubFloat64(p *float64, v float64) float64 { *p -= v; return *p }
- func AssignSubComplex64(p *complex64, v complex64) complex64 { *p -= v; return *p }
- func AssignSubComplex128(p *complex128, v complex128) complex128 { *p -= v; return *p }
- func AssignSubUintptr(p *uintptr, v uintptr) uintptr { *p -= v; return *p }
- func AssignAndInt8(p *int8, v int8) int8 { *p &= v; return *p }
- func AssignAndInt16(p *int16, v int16) int16 { *p &= v; return *p }
- func AssignAndInt32(p *int32, v int32) int32 { *p &= v; return *p }
- func AssignAndInt64(p *int64, v int64) int64 { *p &= v; return *p }
- func AssignAndUint8(p *uint8, v uint8) uint8 { *p &= v; return *p }
- func AssignAndUint16(p *uint16, v uint16) uint16 { *p &= v; return *p }
- func AssignAndUint32(p *uint32, v uint32) uint32 { *p &= v; return *p }
- func AssignAndUint64(p *uint64, v uint64) uint64 { *p &= v; return *p }
- func AssignAndUintptr(p *uintptr, v uintptr) uintptr { *p &= v; return *p }
- func AssignXorInt8(p *int8, v int8) int8 { *p ^= v; return *p }
- func AssignXorInt16(p *int16, v int16) int16 { *p ^= v; return *p }
- func AssignXorInt32(p *int32, v int32) int32 { *p ^= v; return *p }
- func AssignXorInt64(p *int64, v int64) int64 { *p ^= v; return *p }
- func AssignXorUint8(p *uint8, v uint8) uint8 { *p ^= v; return *p }
- func AssignXorUint16(p *uint16, v uint16) uint16 { *p ^= v; return *p }
- func AssignXorUint32(p *uint32, v uint32) uint32 { *p ^= v; return *p }
- func AssignXorUint64(p *uint64, v uint64) uint64 { *p ^= v; return *p }
- func AssignXorUintptr(p *uintptr, v uintptr) uintptr { *p ^= v; return *p }
- func AssignOrInt8(p *int8, v int8) int8 { *p |= v; return *p }
- func AssignOrInt16(p *int16, v int16) int16 { *p |= v; return *p }
- func AssignOrInt32(p *int32, v int32) int32 { *p |= v; return *p }
- func AssignOrInt64(p *int64, v int64) int64 { *p |= v; return *p }
- func AssignOrUint8(p *uint8, v uint8) uint8 { *p |= v; return *p }
- func AssignOrUint16(p *uint16, v uint16) uint16 { *p |= v; return *p }
- func AssignOrUint32(p *uint32, v uint32) uint32 { *p |= v; return *p }
- func AssignOrUint64(p *uint64, v uint64) uint64 { *p |= v; return *p }
- func AssignOrUintptr(p *uintptr, v uintptr) uintptr { *p |= v; return *p }
- func AssignMulPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) *= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignMulPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) *= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignMulPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) *= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignMulPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) *= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignMulPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) *= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignMulPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) *= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignMulPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) *= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignMulPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) *= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignMulPtrFloat32(p uintptr, v float32) float32 {
- *(*float32)(unsafe.Pointer(p)) *= v
- return *(*float32)(unsafe.Pointer(p))
- }
- func AssignMulPtrFloat64(p uintptr, v float64) float64 {
- *(*float64)(unsafe.Pointer(p)) *= v
- return *(*float64)(unsafe.Pointer(p))
- }
- func AssignMulPtrComplex64(p uintptr, v complex64) complex64 {
- *(*complex64)(unsafe.Pointer(p)) *= v
- return *(*complex64)(unsafe.Pointer(p))
- }
- func AssignMulPtrComplex128(p uintptr, v complex128) complex128 {
- *(*complex128)(unsafe.Pointer(p)) *= v
- return *(*complex128)(unsafe.Pointer(p))
- }
- func AssignMulPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) *= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignDivPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) /= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignDivPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) /= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignDivPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) /= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignDivPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) /= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignDivPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) /= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignDivPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) /= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignDivPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) /= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignDivPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) /= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignDivPtrFloat32(p uintptr, v float32) float32 {
- *(*float32)(unsafe.Pointer(p)) /= v
- return *(*float32)(unsafe.Pointer(p))
- }
- func AssignDivPtrFloat64(p uintptr, v float64) float64 {
- *(*float64)(unsafe.Pointer(p)) /= v
- return *(*float64)(unsafe.Pointer(p))
- }
- func AssignDivPtrComplex64(p uintptr, v complex64) complex64 {
- *(*complex64)(unsafe.Pointer(p)) /= v
- return *(*complex64)(unsafe.Pointer(p))
- }
- func AssignDivPtrComplex128(p uintptr, v complex128) complex128 {
- *(*complex128)(unsafe.Pointer(p)) /= v
- return *(*complex128)(unsafe.Pointer(p))
- }
- func AssignDivPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) /= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignRemPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) %= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignRemPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) %= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignRemPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) %= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignRemPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) %= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignRemPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) %= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignRemPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) %= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignRemPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) %= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignRemPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) %= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignRemPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) %= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignAddPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) += v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignAddPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) += v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignAddPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) += v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignAddPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) += v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignAddPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) += v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignAddPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) += v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignAddPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) += v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignAddPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) += v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignAddPtrFloat32(p uintptr, v float32) float32 {
- *(*float32)(unsafe.Pointer(p)) += v
- return *(*float32)(unsafe.Pointer(p))
- }
- func AssignAddPtrFloat64(p uintptr, v float64) float64 {
- *(*float64)(unsafe.Pointer(p)) += v
- return *(*float64)(unsafe.Pointer(p))
- }
- func AssignAddPtrComplex64(p uintptr, v complex64) complex64 {
- *(*complex64)(unsafe.Pointer(p)) += v
- return *(*complex64)(unsafe.Pointer(p))
- }
- func AssignAddPtrComplex128(p uintptr, v complex128) complex128 {
- *(*complex128)(unsafe.Pointer(p)) += v
- return *(*complex128)(unsafe.Pointer(p))
- }
- func AssignAddPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) += v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignSubPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) -= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignSubPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) -= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignSubPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) -= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignSubPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) -= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignSubPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) -= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignSubPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) -= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignSubPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) -= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignSubPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) -= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignSubPtrFloat32(p uintptr, v float32) float32 {
- *(*float32)(unsafe.Pointer(p)) -= v
- return *(*float32)(unsafe.Pointer(p))
- }
- func AssignSubPtrFloat64(p uintptr, v float64) float64 {
- *(*float64)(unsafe.Pointer(p)) -= v
- return *(*float64)(unsafe.Pointer(p))
- }
- func AssignSubPtrComplex64(p uintptr, v complex64) complex64 {
- *(*complex64)(unsafe.Pointer(p)) -= v
- return *(*complex64)(unsafe.Pointer(p))
- }
- func AssignSubPtrComplex128(p uintptr, v complex128) complex128 {
- *(*complex128)(unsafe.Pointer(p)) -= v
- return *(*complex128)(unsafe.Pointer(p))
- }
- func AssignSubPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) -= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignAndPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) &= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignAndPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) &= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignAndPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) &= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignAndPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) &= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignAndPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) &= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignAndPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) &= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignAndPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) &= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignAndPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) &= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignAndPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) &= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignXorPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) ^= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignXorPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) ^= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignXorPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) ^= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignXorPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) ^= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignXorPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) ^= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignXorPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) ^= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignXorPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) ^= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignXorPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) ^= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignXorPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) ^= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignOrPtrInt8(p uintptr, v int8) int8 {
- *(*int8)(unsafe.Pointer(p)) |= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignOrPtrInt16(p uintptr, v int16) int16 {
- *(*int16)(unsafe.Pointer(p)) |= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignOrPtrInt32(p uintptr, v int32) int32 {
- *(*int32)(unsafe.Pointer(p)) |= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignOrPtrInt64(p uintptr, v int64) int64 {
- *(*int64)(unsafe.Pointer(p)) |= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignOrPtrUint8(p uintptr, v uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) |= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignOrPtrUint16(p uintptr, v uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) |= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignOrPtrUint32(p uintptr, v uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) |= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignOrPtrUint64(p uintptr, v uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) |= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignOrPtrUintptr(p uintptr, v uintptr) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) |= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignShlPtrInt8(p uintptr, v int) int8 {
- *(*int8)(unsafe.Pointer(p)) <<= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignShlPtrInt16(p uintptr, v int) int16 {
- *(*int16)(unsafe.Pointer(p)) <<= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignShlPtrInt32(p uintptr, v int) int32 {
- *(*int32)(unsafe.Pointer(p)) <<= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignShlPtrInt64(p uintptr, v int) int64 {
- *(*int64)(unsafe.Pointer(p)) <<= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignShlPtrUint8(p uintptr, v int) uint8 {
- *(*uint8)(unsafe.Pointer(p)) <<= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignShlPtrUint16(p uintptr, v int) uint16 {
- *(*uint16)(unsafe.Pointer(p)) <<= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignShlPtrUint32(p uintptr, v int) uint32 {
- *(*uint32)(unsafe.Pointer(p)) <<= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignShlPtrUint64(p uintptr, v int) uint64 {
- *(*uint64)(unsafe.Pointer(p)) <<= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignShlPtrUintptr(p uintptr, v int) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) <<= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignShrPtrInt8(p uintptr, v int) int8 {
- *(*int8)(unsafe.Pointer(p)) >>= v
- return *(*int8)(unsafe.Pointer(p))
- }
- func AssignShrPtrInt16(p uintptr, v int) int16 {
- *(*int16)(unsafe.Pointer(p)) >>= v
- return *(*int16)(unsafe.Pointer(p))
- }
- func AssignShrPtrInt32(p uintptr, v int) int32 {
- *(*int32)(unsafe.Pointer(p)) >>= v
- return *(*int32)(unsafe.Pointer(p))
- }
- func AssignShrPtrInt64(p uintptr, v int) int64 {
- *(*int64)(unsafe.Pointer(p)) >>= v
- return *(*int64)(unsafe.Pointer(p))
- }
- func AssignShrPtrUint8(p uintptr, v int) uint8 {
- *(*uint8)(unsafe.Pointer(p)) >>= v
- return *(*uint8)(unsafe.Pointer(p))
- }
- func AssignShrPtrUint16(p uintptr, v int) uint16 {
- *(*uint16)(unsafe.Pointer(p)) >>= v
- return *(*uint16)(unsafe.Pointer(p))
- }
- func AssignShrPtrUint32(p uintptr, v int) uint32 {
- *(*uint32)(unsafe.Pointer(p)) >>= v
- return *(*uint32)(unsafe.Pointer(p))
- }
- func AssignShrPtrUint64(p uintptr, v int) uint64 {
- *(*uint64)(unsafe.Pointer(p)) >>= v
- return *(*uint64)(unsafe.Pointer(p))
- }
- func AssignShrPtrUintptr(p uintptr, v int) uintptr {
- *(*uintptr)(unsafe.Pointer(p)) >>= v
- return *(*uintptr)(unsafe.Pointer(p))
- }
- func AssignShlInt8(p *int8, v int) int8 { *p <<= v; return *p }
- func AssignShlInt16(p *int16, v int) int16 { *p <<= v; return *p }
- func AssignShlInt32(p *int32, v int) int32 { *p <<= v; return *p }
- func AssignShlInt64(p *int64, v int) int64 { *p <<= v; return *p }
- func AssignShlUint8(p *uint8, v int) uint8 { *p <<= v; return *p }
- func AssignShlUint16(p *uint16, v int) uint16 { *p <<= v; return *p }
- func AssignShlUint32(p *uint32, v int) uint32 { *p <<= v; return *p }
- func AssignShlUint64(p *uint64, v int) uint64 { *p <<= v; return *p }
- func AssignShlUintptr(p *uintptr, v int) uintptr { *p <<= v; return *p }
- func AssignShrInt8(p *int8, v int) int8 { *p >>= v; return *p }
- func AssignShrInt16(p *int16, v int) int16 { *p >>= v; return *p }
- func AssignShrInt32(p *int32, v int) int32 { *p >>= v; return *p }
- func AssignShrInt64(p *int64, v int) int64 { *p >>= v; return *p }
- func AssignShrUint8(p *uint8, v int) uint8 { *p >>= v; return *p }
- func AssignShrUint16(p *uint16, v int) uint16 { *p >>= v; return *p }
- func AssignShrUint32(p *uint32, v int) uint32 { *p >>= v; return *p }
- func AssignShrUint64(p *uint64, v int) uint64 { *p >>= v; return *p }
- func AssignShrUintptr(p *uintptr, v int) uintptr { *p >>= v; return *p }
- func PreIncInt8(p *int8, d int8) int8 { *p += d; return *p }
- func PreIncInt16(p *int16, d int16) int16 { *p += d; return *p }
- func PreIncInt32(p *int32, d int32) int32 { *p += d; return *p }
- func PreIncInt64(p *int64, d int64) int64 { *p += d; return *p }
- func PreIncUint8(p *uint8, d uint8) uint8 { *p += d; return *p }
- func PreIncUint16(p *uint16, d uint16) uint16 { *p += d; return *p }
- func PreIncUint32(p *uint32, d uint32) uint32 { *p += d; return *p }
- func PreIncUint64(p *uint64, d uint64) uint64 { *p += d; return *p }
- func PreIncFloat32(p *float32, d float32) float32 { *p += d; return *p }
- func PreIncFloat64(p *float64, d float64) float64 { *p += d; return *p }
- func PreIncComplex64(p *complex64, d complex64) complex64 { *p += d; return *p }
- func PreIncComplex128(p *complex128, d complex128) complex128 { *p += d; return *p }
- func PreIncUintptr(p *uintptr, d uintptr) uintptr { *p += d; return *p }
- func PreIncAtomicInt32(p *int32, d int32) int32 { return atomic.AddInt32(p, d) }
- func PreIncAtomicInt64(p *int64, d int64) int64 { return atomic.AddInt64(p, d) }
- func PreIncAtomicUint32(p *uint32, d uint32) uint32 { return atomic.AddUint32(p, d) }
- func PreIncAtomicUint64(p *uint64, d uint64) uint64 { return atomic.AddUint64(p, d) }
- func PreIncAtomicUintptr(p *uintptr, d uintptr) uintptr { return atomic.AddUintptr(p, d) }
- func PreIncAtomicInt32P(p uintptr, d int32) int32 {
- return atomic.AddInt32((*int32)(unsafe.Pointer(p)), d)
- }
- func PreIncAtomicInt64P(p uintptr, d int64) int64 {
- return atomic.AddInt64((*int64)(unsafe.Pointer(p)), d)
- }
- func PreIncAtomicUint32P(p uintptr, d uint32) uint32 {
- return atomic.AddUint32((*uint32)(unsafe.Pointer(p)), d)
- }
- func PreIncAtomicUint64P(p uintptr, d uint64) uint64 {
- return atomic.AddUint64((*uint64)(unsafe.Pointer(p)), d)
- }
- func PreInrAtomicUintptrP(p uintptr, d uintptr) uintptr {
- return atomic.AddUintptr((*uintptr)(unsafe.Pointer(p)), d)
- }
- func PreDecInt8(p *int8, d int8) int8 { *p -= d; return *p }
- func PreDecInt16(p *int16, d int16) int16 { *p -= d; return *p }
- func PreDecInt32(p *int32, d int32) int32 { *p -= d; return *p }
- func PreDecInt64(p *int64, d int64) int64 { *p -= d; return *p }
- func PreDecUint8(p *uint8, d uint8) uint8 { *p -= d; return *p }
- func PreDecUint16(p *uint16, d uint16) uint16 { *p -= d; return *p }
- func PreDecUint32(p *uint32, d uint32) uint32 { *p -= d; return *p }
- func PreDecUint64(p *uint64, d uint64) uint64 { *p -= d; return *p }
- func PreDecFloat32(p *float32, d float32) float32 { *p -= d; return *p }
- func PreDecFloat64(p *float64, d float64) float64 { *p -= d; return *p }
- func PreDecComplex64(p *complex64, d complex64) complex64 { *p -= d; return *p }
- func PreDecComplex128(p *complex128, d complex128) complex128 { *p -= d; return *p }
- func PreDecUintptr(p *uintptr, d uintptr) uintptr { *p -= d; return *p }
- func PreDecAtomicInt32(p *int32, d int32) int32 { return atomic.AddInt32(p, -d) }
- func PreDecAtomicInt64(p *int64, d int64) int64 { return atomic.AddInt64(p, -d) }
- func PreDecAtomicUint32(p *uint32, d uint32) uint32 { return atomic.AddUint32(p, -d) }
- func PreDecAtomicUint64(p *uint64, d uint64) uint64 { return atomic.AddUint64(p, -d) }
- func PreDecAtomicUintptr(p *uintptr, d uintptr) uintptr { return atomic.AddUintptr(p, -d) }
- func PostIncInt8(p *int8, d int8) int8 { r := *p; *p += d; return r }
- func PostIncInt16(p *int16, d int16) int16 { r := *p; *p += d; return r }
- func PostIncInt32(p *int32, d int32) int32 { r := *p; *p += d; return r }
- func PostIncInt64(p *int64, d int64) int64 { r := *p; *p += d; return r }
- func PostIncUint8(p *uint8, d uint8) uint8 { r := *p; *p += d; return r }
- func PostIncUint16(p *uint16, d uint16) uint16 { r := *p; *p += d; return r }
- func PostIncUint32(p *uint32, d uint32) uint32 { r := *p; *p += d; return r }
- func PostIncUint64(p *uint64, d uint64) uint64 { r := *p; *p += d; return r }
- func PostIncFloat32(p *float32, d float32) float32 { r := *p; *p += d; return r }
- func PostIncFloat64(p *float64, d float64) float64 { r := *p; *p += d; return r }
- func PostIncComplex64(p *complex64, d complex64) complex64 { r := *p; *p += d; return r }
- func PostIncComplex128(p *complex128, d complex128) complex128 { r := *p; *p += d; return r }
- func PostIncUintptr(p *uintptr, d uintptr) uintptr { r := *p; *p += d; return r }
- func PostIncAtomicInt32(p *int32, d int32) int32 { return atomic.AddInt32(p, d) - d }
- func PostIncAtomicInt64(p *int64, d int64) int64 { return atomic.AddInt64(p, d) - d }
- func PostIncAtomicUint32(p *uint32, d uint32) uint32 { return atomic.AddUint32(p, d) - d }
- func PostIncAtomicUint64(p *uint64, d uint64) uint64 { return atomic.AddUint64(p, d) - d }
- func PostIncAtomicUintptr(p *uintptr, d uintptr) uintptr { return atomic.AddUintptr(p, d) - d }
- func PostIncAtomicInt32P(p uintptr, d int32) int32 {
- return atomic.AddInt32((*int32)(unsafe.Pointer(p)), d) - d
- }
- func PostIncAtomicInt64P(p uintptr, d int64) int64 {
- return atomic.AddInt64((*int64)(unsafe.Pointer(p)), d) - d
- }
- func PostIncAtomicUint32P(p uintptr, d uint32) uint32 {
- return atomic.AddUint32((*uint32)(unsafe.Pointer(p)), d) - d
- }
- func PostIncAtomicUint64P(p uintptr, d uint64) uint64 {
- return atomic.AddUint64((*uint64)(unsafe.Pointer(p)), d) - d
- }
- func PostIncAtomicUintptrP(p uintptr, d uintptr) uintptr {
- return atomic.AddUintptr((*uintptr)(unsafe.Pointer(p)), d) - d
- }
- func PostDecInt8(p *int8, d int8) int8 { r := *p; *p -= d; return r }
- func PostDecInt16(p *int16, d int16) int16 { r := *p; *p -= d; return r }
- func PostDecInt32(p *int32, d int32) int32 { r := *p; *p -= d; return r }
- func PostDecInt64(p *int64, d int64) int64 { r := *p; *p -= d; return r }
- func PostDecUint8(p *uint8, d uint8) uint8 { r := *p; *p -= d; return r }
- func PostDecUint16(p *uint16, d uint16) uint16 { r := *p; *p -= d; return r }
- func PostDecUint32(p *uint32, d uint32) uint32 { r := *p; *p -= d; return r }
- func PostDecUint64(p *uint64, d uint64) uint64 { r := *p; *p -= d; return r }
- func PostDecFloat32(p *float32, d float32) float32 { r := *p; *p -= d; return r }
- func PostDecFloat64(p *float64, d float64) float64 { r := *p; *p -= d; return r }
- func PostDecComplex64(p *complex64, d complex64) complex64 { r := *p; *p -= d; return r }
- func PostDecComplex128(p *complex128, d complex128) complex128 { r := *p; *p -= d; return r }
- func PostDecUintptr(p *uintptr, d uintptr) uintptr { r := *p; *p -= d; return r }
- func PostDecAtomicInt32(p *int32, d int32) int32 { return atomic.AddInt32(p, -d) + d }
- func PostDecAtomicInt64(p *int64, d int64) int64 { return atomic.AddInt64(p, -d) + d }
- func PostDecAtomicUint32(p *uint32, d uint32) uint32 { return atomic.AddUint32(p, -d) + d }
- func PostDecAtomicUint64(p *uint64, d uint64) uint64 { return atomic.AddUint64(p, -d) + d }
- func PostDecAtomicUintptr(p *uintptr, d uintptr) uintptr { return atomic.AddUintptr(p, -d) + d }
- func Int8FromInt8(n int8) int8 { return n }
- func Int8FromInt16(n int16) int8 { return int8(n) }
- func Int8FromInt32(n int32) int8 { return int8(n) }
- func Int8FromInt64(n int64) int8 { return int8(n) }
- func Int8FromUint8(n uint8) int8 { return int8(n) }
- func Int8FromUint16(n uint16) int8 { return int8(n) }
- func Int8FromUint32(n uint32) int8 { return int8(n) }
- func Int8FromUint64(n uint64) int8 { return int8(n) }
- func Int8FromFloat32(n float32) int8 { return int8(n) }
- func Int8FromFloat64(n float64) int8 { return int8(n) }
- func Int8FromComplex64(n complex64) int8 { return int8(real(n)) }
- func Int8FromComplex128(n complex128) int8 { return int8(real(n)) }
- func Int8FromUintptr(n uintptr) int8 { return int8(n) }
- func Int16FromInt8(n int8) int16 { return int16(n) }
- func Int16FromInt16(n int16) int16 { return n }
- func Int16FromInt32(n int32) int16 { return int16(n) }
- func Int16FromInt64(n int64) int16 { return int16(n) }
- func Int16FromUint8(n uint8) int16 { return int16(n) }
- func Int16FromUint16(n uint16) int16 { return int16(n) }
- func Int16FromUint32(n uint32) int16 { return int16(n) }
- func Int16FromUint64(n uint64) int16 { return int16(n) }
- func Int16FromFloat32(n float32) int16 { return int16(n) }
- func Int16FromFloat64(n float64) int16 { return int16(n) }
- func Int16FromComplex64(n complex64) int16 { return int16(real(n)) }
- func Int16FromComplex128(n complex128) int16 { return int16(real(n)) }
- func Int16FromUintptr(n uintptr) int16 { return int16(n) }
- func Int32FromInt8(n int8) int32 { return int32(n) }
- func Int32FromInt16(n int16) int32 { return int32(n) }
- func Int32FromInt32(n int32) int32 { return n }
- func Int32FromInt64(n int64) int32 { return int32(n) }
- func Int32FromUint8(n uint8) int32 { return int32(n) }
- func Int32FromUint16(n uint16) int32 { return int32(n) }
- func Int32FromUint32(n uint32) int32 { return int32(n) }
- func Int32FromUint64(n uint64) int32 { return int32(n) }
- func Int32FromFloat32(n float32) int32 { return int32(n) }
- func Int32FromFloat64(n float64) int32 { return int32(n) }
- func Int32FromComplex64(n complex64) int32 { return int32(real(n)) }
- func Int32FromComplex128(n complex128) int32 { return int32(real(n)) }
- func Int32FromUintptr(n uintptr) int32 { return int32(n) }
- func Int64FromInt8(n int8) int64 { return int64(n) }
- func Int64FromInt16(n int16) int64 { return int64(n) }
- func Int64FromInt32(n int32) int64 { return int64(n) }
- func Int64FromInt64(n int64) int64 { return n }
- func Int64FromUint8(n uint8) int64 { return int64(n) }
- func Int64FromUint16(n uint16) int64 { return int64(n) }
- func Int64FromUint32(n uint32) int64 { return int64(n) }
- func Int64FromUint64(n uint64) int64 { return int64(n) }
- func Int64FromFloat32(n float32) int64 { return int64(n) }
- func Int64FromFloat64(n float64) int64 { return int64(n) }
- func Int64FromComplex64(n complex64) int64 { return int64(real(n)) }
- func Int64FromComplex128(n complex128) int64 { return int64(real(n)) }
- func Int64FromUintptr(n uintptr) int64 { return int64(n) }
- func Uint8FromInt8(n int8) uint8 { return uint8(n) }
- func Uint8FromInt16(n int16) uint8 { return uint8(n) }
- func Uint8FromInt32(n int32) uint8 { return uint8(n) }
- func Uint8FromInt64(n int64) uint8 { return uint8(n) }
- func Uint8FromUint8(n uint8) uint8 { return n }
- func Uint8FromUint16(n uint16) uint8 { return uint8(n) }
- func Uint8FromUint32(n uint32) uint8 { return uint8(n) }
- func Uint8FromUint64(n uint64) uint8 { return uint8(n) }
- func Uint8FromFloat32(n float32) uint8 { return uint8(n) }
- func Uint8FromFloat64(n float64) uint8 { return uint8(n) }
- func Uint8FromComplex64(n complex64) uint8 { return uint8(real(n)) }
- func Uint8FromComplex128(n complex128) uint8 { return uint8(real(n)) }
- func Uint8FromUintptr(n uintptr) uint8 { return uint8(n) }
- func Uint16FromInt8(n int8) uint16 { return uint16(n) }
- func Uint16FromInt16(n int16) uint16 { return uint16(n) }
- func Uint16FromInt32(n int32) uint16 { return uint16(n) }
- func Uint16FromInt64(n int64) uint16 { return uint16(n) }
- func Uint16FromUint8(n uint8) uint16 { return uint16(n) }
- func Uint16FromUint16(n uint16) uint16 { return n }
- func Uint16FromUint32(n uint32) uint16 { return uint16(n) }
- func Uint16FromUint64(n uint64) uint16 { return uint16(n) }
- func Uint16FromFloat32(n float32) uint16 { return uint16(n) }
- func Uint16FromFloat64(n float64) uint16 { return uint16(n) }
- func Uint16FromComplex64(n complex64) uint16 { return uint16(real(n)) }
- func Uint16FromComplex128(n complex128) uint16 { return uint16(real(n)) }
- func Uint16FromUintptr(n uintptr) uint16 { return uint16(n) }
- func Uint32FromInt8(n int8) uint32 { return uint32(n) }
- func Uint32FromInt16(n int16) uint32 { return uint32(n) }
- func Uint32FromInt32(n int32) uint32 { return uint32(n) }
- func Uint32FromInt64(n int64) uint32 { return uint32(n) }
- func Uint32FromUint8(n uint8) uint32 { return uint32(n) }
- func Uint32FromUint16(n uint16) uint32 { return uint32(n) }
- func Uint32FromUint32(n uint32) uint32 { return n }
- func Uint32FromUint64(n uint64) uint32 { return uint32(n) }
- func Uint32FromFloat32(n float32) uint32 { return uint32(n) }
- func Uint32FromFloat64(n float64) uint32 { return uint32(n) }
- func Uint32FromComplex64(n complex64) uint32 { return uint32(real(n)) }
- func Uint32FromComplex128(n complex128) uint32 { return uint32(real(n)) }
- func Uint32FromUintptr(n uintptr) uint32 { return uint32(n) }
- func Uint64FromInt8(n int8) uint64 { return uint64(n) }
- func Uint64FromInt16(n int16) uint64 { return uint64(n) }
- func Uint64FromInt32(n int32) uint64 { return uint64(n) }
- func Uint64FromInt64(n int64) uint64 { return uint64(n) }
- func Uint64FromUint8(n uint8) uint64 { return uint64(n) }
- func Uint64FromUint16(n uint16) uint64 { return uint64(n) }
- func Uint64FromUint32(n uint32) uint64 { return uint64(n) }
- func Uint64FromUint64(n uint64) uint64 { return n }
- func Uint64FromFloat32(n float32) uint64 { return uint64(n) }
- func Uint64FromFloat64(n float64) uint64 { return uint64(n) }
- func Uint64FromComplex64(n complex64) uint64 { return uint64(real(n)) }
- func Uint64FromComplex128(n complex128) uint64 { return uint64(real(n)) }
- func Uint64FromUintptr(n uintptr) uint64 { return uint64(n) }
- func Float32FromInt8(n int8) float32 { return float32(n) }
- func Float32FromInt16(n int16) float32 { return float32(n) }
- func Float32FromInt32(n int32) float32 { return float32(n) }
- func Float32FromInt64(n int64) float32 { return float32(n) }
- func Float32FromUint8(n uint8) float32 { return float32(n) }
- func Float32FromUint16(n uint16) float32 { return float32(n) }
- func Float32FromUint32(n uint32) float32 { return float32(n) }
- func Float32FromUint64(n uint64) float32 { return float32(n) }
- func Float32FromFloat32(n float32) float32 { return n }
- func Float32FromFloat64(n float64) float32 { return float32(n) }
- func Float32FromComplex64(n complex64) float32 { return real(n) }
- func Float32FromComplex128(n complex128) float32 { return float32(real(n)) }
- func Float32FromUintptr(n uintptr) float32 { return float32(n) }
- func Float64FromInt8(n int8) float64 { return float64(n) }
- func Float64FromInt16(n int16) float64 { return float64(n) }
- func Float64FromInt32(n int32) float64 { return float64(n) }
- func Float64FromInt64(n int64) float64 { return float64(n) }
- func Float64FromUint8(n uint8) float64 { return float64(n) }
- func Float64FromUint16(n uint16) float64 { return float64(n) }
- func Float64FromUint32(n uint32) float64 { return float64(n) }
- func Float64FromUint64(n uint64) float64 { return float64(n) }
- func Float64FromFloat32(n float32) float64 { return float64(n) }
- func Float64FromFloat64(n float64) float64 { return n }
- func Float64FromComplex64(n complex64) float64 { return float64(real(n)) }
- func Float64FromComplex128(n complex128) float64 { return real(n) }
- func Float64FromUintptr(n uintptr) float64 { return float64(n) }
- func Complex64FromInt8(n int8) complex64 { return complex(float32(n), 0) }
- func Complex64FromInt16(n int16) complex64 { return complex(float32(n), 0) }
- func Complex64FromInt32(n int32) complex64 { return complex(float32(n), 0) }
- func Complex64FromInt64(n int64) complex64 { return complex(float32(n), 0) }
- func Complex64FromUint8(n uint8) complex64 { return complex(float32(n), 0) }
- func Complex64FromUint16(n uint16) complex64 { return complex(float32(n), 0) }
- func Complex64FromUint32(n uint32) complex64 { return complex(float32(n), 0) }
- func Complex64FromUint64(n uint64) complex64 { return complex(float32(n), 0) }
- func Complex64FromFloat32(n float32) complex64 { return complex(n, 0) }
- func Complex64FromFloat64(n float64) complex64 { return complex(float32(n), 0) }
- func Complex64FromComplex64(n complex64) complex64 { return n }
- func Complex64FromComplex128(n complex128) complex64 { return complex64(n) }
- func Complex64FromUintptr(n uintptr) complex64 { return complex(float32(n), 0) }
- func Complex128FromInt8(n int8) complex128 { return complex(float64(n), 0) }
- func Complex128FromInt16(n int16) complex128 { return complex(float64(n), 0) }
- func Complex128FromInt32(n int32) complex128 { return complex(float64(n), 0) }
- func Complex128FromInt64(n int64) complex128 { return complex(float64(n), 0) }
- func Complex128FromUint8(n uint8) complex128 { return complex(float64(n), 0) }
- func Complex128FromUint16(n uint16) complex128 { return complex(float64(n), 0) }
- func Complex128FromUint32(n uint32) complex128 { return complex(float64(n), 0) }
- func Complex128FromUint64(n uint64) complex128 { return complex(float64(n), 0) }
- func Complex128FromFloat32(n float32) complex128 { return complex(float64(n), 0) }
- func Complex128FromFloat64(n float64) complex128 { return complex(n, 0) }
- func Complex128FromComplex64(n complex64) complex128 { return complex128(n) }
- func Complex128FromComplex128(n complex128) complex128 { return n }
- func Complex128FromUintptr(n uintptr) complex128 { return complex(float64(n), 0) }
- func UintptrFromInt8(n int8) uintptr { return uintptr(n) }
- func UintptrFromInt16(n int16) uintptr { return uintptr(n) }
- func UintptrFromInt32(n int32) uintptr { return uintptr(n) }
- func UintptrFromInt64(n int64) uintptr { return uintptr(n) }
- func UintptrFromUint8(n uint8) uintptr { return uintptr(n) }
- func UintptrFromUint16(n uint16) uintptr { return uintptr(n) }
- func UintptrFromUint32(n uint32) uintptr { return uintptr(n) }
- func UintptrFromUint64(n uint64) uintptr { return uintptr(n) }
- func UintptrFromFloat32(n float32) uintptr { return uintptr(n) }
- func UintptrFromFloat64(n float64) uintptr { return uintptr(n) }
- func UintptrFromComplex64(n complex64) uintptr { return uintptr(real(n)) }
- func UintptrFromComplex128(n complex128) uintptr { return uintptr(real(n)) }
- func UintptrFromUintptr(n uintptr) uintptr { return n }
- func Int8(n int8) int8 { return n }
- func Int16(n int16) int16 { return n }
- func Int32(n int32) int32 { return n }
- func Int64(n int64) int64 { return n }
- func Uint8(n uint8) uint8 { return n }
- func Uint16(n uint16) uint16 { return n }
- func Uint32(n uint32) uint32 { return n }
- func Uint64(n uint64) uint64 { return n }
- func Float32(n float32) float32 { return n }
- func Float64(n float64) float64 { return n }
- func Complex64(n complex64) complex64 { return n }
- func Complex128(n complex128) complex128 { return n }
- func Uintptr(n uintptr) uintptr { return n }
- func NegInt8(n int8) int8 { return -n }
- func NegInt16(n int16) int16 { return -n }
- func NegInt32(n int32) int32 { return -n }
- func NegInt64(n int64) int64 { return -n }
- func NegUint8(n uint8) uint8 { return -n }
- func NegUint16(n uint16) uint16 { return -n }
- func NegUint32(n uint32) uint32 { return -n }
- func NegUint64(n uint64) uint64 { return -n }
- func NegUintptr(n uintptr) uintptr { return -n }
- func CplInt8(n int8) int8 { return ^n }
- func CplInt16(n int16) int16 { return ^n }
- func CplInt32(n int32) int32 { return ^n }
- func CplInt64(n int64) int64 { return ^n }
- func CplUint8(n uint8) uint8 { return ^n }
- func CplUint16(n uint16) uint16 { return ^n }
- func CplUint32(n uint32) uint32 { return ^n }
- func CplUint64(n uint64) uint64 { return ^n }
- func CplUintptr(n uintptr) uintptr { return ^n }
- func BoolInt8(b bool) int8 {
- if b {
- return 1
- }
- return 0
- }
- func BoolInt16(b bool) int16 {
- if b {
- return 1
- }
- return 0
- }
- func BoolInt32(b bool) int32 {
- if b {
- return 1
- }
- return 0
- }
- func BoolInt64(b bool) int64 {
- if b {
- return 1
- }
- return 0
- }
- func BoolUint8(b bool) uint8 {
- if b {
- return 1
- }
- return 0
- }
- func BoolUint16(b bool) uint16 {
- if b {
- return 1
- }
- return 0
- }
- func BoolUint32(b bool) uint32 {
- if b {
- return 1
- }
- return 0
- }
- func BoolUint64(b bool) uint64 {
- if b {
- return 1
- }
- return 0
- }
- func BoolUintptr(b bool) uintptr {
- if b {
- return 1
- }
- return 0
- }
- func SetBitFieldPtr8Int8(p uintptr, v int8, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- }
- func SetBitFieldPtr8Int16(p uintptr, v int16, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- }
- func SetBitFieldPtr8Int32(p uintptr, v int32, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- }
- func SetBitFieldPtr8Int64(p uintptr, v int64, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- }
- func SetBitFieldPtr8Uint8(p uintptr, v uint8, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | v<<off&mask
- }
- func SetBitFieldPtr8Uint16(p uintptr, v uint16, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- }
- func SetBitFieldPtr8Uint32(p uintptr, v uint32, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- }
- func SetBitFieldPtr8Uint64(p uintptr, v uint64, off int, mask uint8) {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- }
- func SetBitFieldPtr16Int8(p uintptr, v int8, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- }
- func SetBitFieldPtr16Int16(p uintptr, v int16, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- }
- func SetBitFieldPtr16Int32(p uintptr, v int32, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- }
- func SetBitFieldPtr16Int64(p uintptr, v int64, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- }
- func SetBitFieldPtr16Uint8(p uintptr, v uint8, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- }
- func SetBitFieldPtr16Uint16(p uintptr, v uint16, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | v<<off&mask
- }
- func SetBitFieldPtr16Uint32(p uintptr, v uint32, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- }
- func SetBitFieldPtr16Uint64(p uintptr, v uint64, off int, mask uint16) {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- }
- func SetBitFieldPtr32Int8(p uintptr, v int8, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- }
- func SetBitFieldPtr32Int16(p uintptr, v int16, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- }
- func SetBitFieldPtr32Int32(p uintptr, v int32, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- }
- func SetBitFieldPtr32Int64(p uintptr, v int64, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- }
- func SetBitFieldPtr32Uint8(p uintptr, v uint8, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- }
- func SetBitFieldPtr32Uint16(p uintptr, v uint16, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- }
- func SetBitFieldPtr32Uint32(p uintptr, v uint32, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | v<<off&mask
- }
- func SetBitFieldPtr32Uint64(p uintptr, v uint64, off int, mask uint32) {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- }
- func SetBitFieldPtr64Int8(p uintptr, v int8, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- }
- func SetBitFieldPtr64Int16(p uintptr, v int16, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- }
- func SetBitFieldPtr64Int32(p uintptr, v int32, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- }
- func SetBitFieldPtr64Int64(p uintptr, v int64, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- }
- func SetBitFieldPtr64Uint8(p uintptr, v uint8, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- }
- func SetBitFieldPtr64Uint16(p uintptr, v uint16, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- }
- func SetBitFieldPtr64Uint32(p uintptr, v uint32, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- }
- func SetBitFieldPtr64Uint64(p uintptr, v uint64, off int, mask uint64) {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | v<<off&mask
- }
- func AssignBitFieldPtr8Int8(p uintptr, v int8, w, off int, mask uint8) int8 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- s := 8 - w
- return v << s >> s
- }
- func AssignBitFieldPtr8Int16(p uintptr, v int16, w, off int, mask uint8) int16 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- s := 16 - w
- return v << s >> s
- }
- func AssignBitFieldPtr8Int32(p uintptr, v int32, w, off int, mask uint8) int32 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- s := 32 - w
- return v << s >> s
- }
- func AssignBitFieldPtr8Int64(p uintptr, v int64, w, off int, mask uint8) int64 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- s := 64 - w
- return v << s >> s
- }
- func AssignBitFieldPtr16Int8(p uintptr, v int8, w, off int, mask uint16) int8 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- s := 8 - w
- return v << s >> s
- }
- func AssignBitFieldPtr16Int16(p uintptr, v int16, w, off int, mask uint16) int16 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- s := 16 - w
- return v << s >> s
- }
- func AssignBitFieldPtr16Int32(p uintptr, v int32, w, off int, mask uint16) int32 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- s := 32 - w
- return v << s >> s
- }
- func AssignBitFieldPtr16Int64(p uintptr, v int64, w, off int, mask uint16) int64 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- s := 64 - w
- return v << s >> s
- }
- func AssignBitFieldPtr32Int8(p uintptr, v int8, w, off int, mask uint32) int8 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- s := 8 - w
- return v << s >> s
- }
- func AssignBitFieldPtr32Int16(p uintptr, v int16, w, off int, mask uint32) int16 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- s := 16 - w
- return v << s >> s
- }
- func AssignBitFieldPtr32Int32(p uintptr, v int32, w, off int, mask uint32) int32 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- s := 32 - w
- return v << s >> s
- }
- func AssignBitFieldPtr32Int64(p uintptr, v int64, w, off int, mask uint32) int64 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- s := 64 - w
- return v << s >> s
- }
- func AssignBitFieldPtr64Int8(p uintptr, v int8, w, off int, mask uint64) int8 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- s := 8 - w
- return v << s >> s
- }
- func AssignBitFieldPtr64Int16(p uintptr, v int16, w, off int, mask uint64) int16 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- s := 16 - w
- return v << s >> s
- }
- func AssignBitFieldPtr64Int32(p uintptr, v int32, w, off int, mask uint64) int32 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- s := 32 - w
- return v << s >> s
- }
- func AssignBitFieldPtr64Int64(p uintptr, v int64, w, off int, mask uint64) int64 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- s := 64 - w
- return v << s >> s
- }
- func AssignBitFieldPtr8Uint8(p uintptr, v uint8, w, off int, mask uint8) uint8 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | v<<off&mask
- return v & (mask >> off)
- }
- func AssignBitFieldPtr8Uint16(p uintptr, v uint16, w, off int, mask uint8) uint16 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- return v & uint16(mask>>off)
- }
- func AssignBitFieldPtr8Uint32(p uintptr, v uint32, w, off int, mask uint8) uint32 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- return v & uint32(mask>>off)
- }
- func AssignBitFieldPtr8Uint64(p uintptr, v uint64, w, off int, mask uint8) uint64 {
- *(*uint8)(unsafe.Pointer(p)) = *(*uint8)(unsafe.Pointer(p))&^mask | uint8(v)<<off&mask
- return v & uint64(mask>>off)
- }
- func AssignBitFieldPtr16Uint8(p uintptr, v uint8, w, off int, mask uint16) uint8 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- return v & uint8(mask>>off)
- }
- func AssignBitFieldPtr16Uint16(p uintptr, v uint16, w, off int, mask uint16) uint16 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | v<<off&mask
- return v & (mask >> off)
- }
- func AssignBitFieldPtr16Uint32(p uintptr, v uint32, w, off int, mask uint16) uint32 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- return v & uint32(mask>>off)
- }
- func AssignBitFieldPtr16Uint64(p uintptr, v uint64, w, off int, mask uint16) uint64 {
- *(*uint16)(unsafe.Pointer(p)) = *(*uint16)(unsafe.Pointer(p))&^mask | uint16(v)<<off&mask
- return v & uint64(mask>>off)
- }
- func AssignBitFieldPtr32Uint8(p uintptr, v uint8, w, off int, mask uint32) uint8 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- return v & uint8(mask>>off)
- }
- func AssignBitFieldPtr32Uint16(p uintptr, v uint16, w, off int, mask uint32) uint16 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- return v & uint16(mask>>off)
- }
- func AssignBitFieldPtr32Uint32(p uintptr, v uint32, w, off int, mask uint32) uint32 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | v<<off&mask
- return v & (mask >> off)
- }
- func AssignBitFieldPtr32Uint64(p uintptr, v uint64, w, off int, mask uint32) uint64 {
- *(*uint32)(unsafe.Pointer(p)) = *(*uint32)(unsafe.Pointer(p))&^mask | uint32(v)<<off&mask
- return v & uint64(mask>>off)
- }
- func AssignBitFieldPtr64Uint8(p uintptr, v uint8, w, off int, mask uint64) uint8 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- return v & uint8(mask>>off)
- }
- func AssignBitFieldPtr64Uint16(p uintptr, v uint16, w, off int, mask uint64) uint16 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- return v & uint16(mask>>off)
- }
- func AssignBitFieldPtr64Uint32(p uintptr, v uint32, w, off int, mask uint64) uint32 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | uint64(v)<<off&mask
- return v & uint32(mask>>off)
- }
- func AssignBitFieldPtr64Uint64(p uintptr, v uint64, w, off int, mask uint64) uint64 {
- *(*uint64)(unsafe.Pointer(p)) = *(*uint64)(unsafe.Pointer(p))&^mask | v<<off&mask
- return v & (mask >> off)
- }
- func PostDecBitFieldPtr8Int8(p uintptr, d int8, w, off int, mask uint8) (r int8) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr8Int16(p uintptr, d int16, w, off int, mask uint8) (r int16) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr8Int32(p uintptr, d int32, w, off int, mask uint8) (r int32) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr8Int64(p uintptr, d int64, w, off int, mask uint8) (r int64) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Int8(p uintptr, d int8, w, off int, mask uint16) (r int8) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Int16(p uintptr, d int16, w, off int, mask uint16) (r int16) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Int32(p uintptr, d int32, w, off int, mask uint16) (r int32) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Int64(p uintptr, d int64, w, off int, mask uint16) (r int64) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Int8(p uintptr, d int8, w, off int, mask uint32) (r int8) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Int16(p uintptr, d int16, w, off int, mask uint32) (r int16) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Int32(p uintptr, d int32, w, off int, mask uint32) (r int32) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Int64(p uintptr, d int64, w, off int, mask uint32) (r int64) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Int8(p uintptr, d int8, w, off int, mask uint64) (r int8) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Int16(p uintptr, d int16, w, off int, mask uint64) (r int16) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Int32(p uintptr, d int32, w, off int, mask uint64) (r int32) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Int64(p uintptr, d int64, w, off int, mask uint64) (r int64) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr8Uint8(p uintptr, d uint8, w, off int, mask uint8) (r uint8) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | (r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr8Uint16(p uintptr, d uint16, w, off int, mask uint8) (r uint16) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = uint16(x0) & uint16(mask) >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr8Uint32(p uintptr, d uint32, w, off int, mask uint8) (r uint32) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = uint32(x0) & uint32(mask) >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr8Uint64(p uintptr, d uint64, w, off int, mask uint8) (r uint64) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = uint64(x0) & uint64(mask) >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Uint8(p uintptr, d uint8, w, off int, mask uint16) (r uint8) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = uint8(x0) & uint8(mask) >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Uint16(p uintptr, d uint16, w, off int, mask uint16) (r uint16) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | (r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Uint32(p uintptr, d uint32, w, off int, mask uint16) (r uint32) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = uint32(x0) & uint32(mask) >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr16Uint64(p uintptr, d uint64, w, off int, mask uint16) (r uint64) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = uint64(x0) & uint64(mask) >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Uint8(p uintptr, d uint8, w, off int, mask uint32) (r uint8) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = uint8(x0) & uint8(mask) >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Uint16(p uintptr, d uint16, w, off int, mask uint32) (r uint16) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = uint16(x0) & uint16(mask) >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Uint32(p uintptr, d uint32, w, off int, mask uint32) (r uint32) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | (r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr32Uint64(p uintptr, d uint64, w, off int, mask uint32) (r uint64) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = uint64(x0) & uint64(mask) >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Uint8(p uintptr, d uint8, w, off int, mask uint64) (r uint8) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = uint8(x0) & uint8(mask) >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Uint16(p uintptr, d uint16, w, off int, mask uint64) (r uint16) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = uint16(x0) & uint16(mask) >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Uint32(p uintptr, d uint32, w, off int, mask uint64) (r uint32) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = uint32(x0) & uint32(mask) >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r-d)<<off&mask
- return r
- }
- func PostDecBitFieldPtr64Uint64(p uintptr, d uint64, w, off int, mask uint64) (r uint64) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | (r-d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Int8(p uintptr, d int8, w, off int, mask uint8) (r int8) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Int16(p uintptr, d int16, w, off int, mask uint8) (r int16) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Int32(p uintptr, d int32, w, off int, mask uint8) (r int32) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Int64(p uintptr, d int64, w, off int, mask uint8) (r int64) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Int8(p uintptr, d int8, w, off int, mask uint16) (r int8) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Int16(p uintptr, d int16, w, off int, mask uint16) (r int16) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Int32(p uintptr, d int32, w, off int, mask uint16) (r int32) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Int64(p uintptr, d int64, w, off int, mask uint16) (r int64) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Int8(p uintptr, d int8, w, off int, mask uint32) (r int8) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Int16(p uintptr, d int16, w, off int, mask uint32) (r int16) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Int32(p uintptr, d int32, w, off int, mask uint32) (r int32) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Int64(p uintptr, d int64, w, off int, mask uint32) (r int64) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Int8(p uintptr, d int8, w, off int, mask uint64) (r int8) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 8 - w - off
- r = int8(x0) & int8(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Int16(p uintptr, d int16, w, off int, mask uint64) (r int16) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 16 - w - off
- r = int16(x0) & int16(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Int32(p uintptr, d int32, w, off int, mask uint64) (r int32) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 32 - w - off
- r = int32(x0) & int32(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Int64(p uintptr, d int64, w, off int, mask uint64) (r int64) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- s := 64 - w - off
- r = int64(x0) & int64(mask) << s >> (s + off)
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Uint8(p uintptr, d uint8, w, off int, mask uint8) (r uint8) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | (r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Uint16(p uintptr, d uint16, w, off int, mask uint8) (r uint16) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = uint16(x0) & uint16(mask) >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Uint32(p uintptr, d uint32, w, off int, mask uint8) (r uint32) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = uint32(x0) & uint32(mask) >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr8Uint64(p uintptr, d uint64, w, off int, mask uint8) (r uint64) {
- x0 := *(*uint8)(unsafe.Pointer(p))
- r = uint64(x0) & uint64(mask) >> off
- *(*uint8)(unsafe.Pointer(p)) = x0&^mask | uint8(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Uint8(p uintptr, d uint8, w, off int, mask uint16) (r uint8) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = uint8(x0) & uint8(mask) >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Uint16(p uintptr, d uint16, w, off int, mask uint16) (r uint16) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | (r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Uint32(p uintptr, d uint32, w, off int, mask uint16) (r uint32) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = uint32(x0) & uint32(mask) >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr16Uint64(p uintptr, d uint64, w, off int, mask uint16) (r uint64) {
- x0 := *(*uint16)(unsafe.Pointer(p))
- r = uint64(x0) & uint64(mask) >> off
- *(*uint16)(unsafe.Pointer(p)) = x0&^mask | uint16(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Uint8(p uintptr, d uint8, w, off int, mask uint32) (r uint8) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = uint8(x0) & uint8(mask) >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Uint16(p uintptr, d uint16, w, off int, mask uint32) (r uint16) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = uint16(x0) & uint16(mask) >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Uint32(p uintptr, d uint32, w, off int, mask uint32) (r uint32) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | (r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr32Uint64(p uintptr, d uint64, w, off int, mask uint32) (r uint64) {
- x0 := *(*uint32)(unsafe.Pointer(p))
- r = uint64(x0) & uint64(mask) >> off
- *(*uint32)(unsafe.Pointer(p)) = x0&^mask | uint32(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Uint8(p uintptr, d uint8, w, off int, mask uint64) (r uint8) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = uint8(x0) & uint8(mask) >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Uint16(p uintptr, d uint16, w, off int, mask uint64) (r uint16) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = uint16(x0) & uint16(mask) >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Uint32(p uintptr, d uint32, w, off int, mask uint64) (r uint32) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = uint32(x0) & uint32(mask) >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | uint64(r+d)<<off&mask
- return r
- }
- func PostIncBitFieldPtr64Uint64(p uintptr, d uint64, w, off int, mask uint64) (r uint64) {
- x0 := *(*uint64)(unsafe.Pointer(p))
- r = x0 & mask >> off
- *(*uint64)(unsafe.Pointer(p)) = x0&^mask | (r+d)<<off&mask
- return r
- }
- func GetEnviron() (r []string) {
- for p := Xenviron; ; p += unsafe.Sizeof(p) {
- q := *(*uintptr)(unsafe.Pointer(p))
- if q == 0 {
- return r
- }
- r = append(r, GoString(q))
- }
- }
|