Gráfico de Commits

8 Commits

Autor SHA1 Mensagem Data
Todd Nowacki 6d8999b7c1 Simple HPHP Changes for HPHP with Clang
Some simple changes for HPHP to help make it clang friendly

---hphp/compiler/package.cpp
---hphp/compiler/package.h
---hphp/runtime/ext/ext_curl.cpp
---hphp/runtime/ext/pdo_mysql.cpp
---hphp/tools/tc-print/offline-x86-code.h
---hphp/util/async_func.cpp
---hphp/util/async_func.h
---hphp/util/compression.cpp
---hphp/util/compression.h
---hphp/util/db_conn.cpp
---hphp/util/db_conn.h
  Deleted unused private fields

~~~hphp/compiler/analysis/symbol_table.h
  Static assert had to be outside the union

+++hphp/runtime/TARGETS
  Added clang specific flag to supress unneded declaration warning

~~~hphp/runtime/base/datatype.h
  Use of logical '&&' with constant operand. Added !=0 to remove warning,

~~~hphp/runtime/base/string_data.h
  Static fields cannot be declared in an anonymous struct/union

~~~hphp/runtime/ext/bcmath/TARGETS
  Moved gcc specific flag from preprocessor_flags to compiler_specific_flags

~---hphp/runtime/ext/pdo_mysql.cpp
  Removed unnecessary self asignment for row_count

~~~hphp/runtime/vm/bytecode.h
  Added default return statement

~---hphp/runtime/vm/jit/codegen.cpp
  spillSlotsToSize was unused

~~~hphp/runtime/vm/jit/irtranslator.cpp
~~~hphp/runtime/vm/jit/linearscan.cpp
  The c++ standard states default arguments shall not be specified in the
  parameter-declaration-clause of a lambda-declarator.

~~~hphp/runtime/vm/jit/vectortranslator-internal.h
  Clang had some issues determining the correct cast when these macros were used
  A simple '!= 0' check was added to make things explicit for clang.

~~~hphp/tools/tc-print/perf-events.h
  Added parens to make clang happy

+++hphp/util/asm-x64.h
  The constexpr needed to be initialized

+++hphp/util/base.h
  Clang also supports tr1 libraries

~~~hphp/util/bits.h
  Again, clang had issues with implicit casting to bool.
  added != 0 check

~~~hphp/util/malloc_size_class.h
  Ambiguous operator precedence. Added parentheses.

~~~hphp/util/thread_local.h
  Misspelled function
2013-06-28 10:33:52 -07:00
Tim Starling 998951619f update copyright date
We did not intend to imply our copyrights last forever

Closes #759
2013-06-03 12:43:56 -07:00
Sara Golemon 6ec64e8bf9 make #includes consistent
I was learning from @jdelong and he said that you should use
double quotes for local includes and angle brackets for library
includes. I asked why our code was the way it was, and he said he wanted
to clean it up. I beat him to it :)

Conflicts:

	hphp/runtime/base/server/admin_request_handler.cpp
	hphp/runtime/vm/named_entity.h
2013-05-15 13:05:06 -07:00
Herman Venter 6afb27bf50 Clean up handling of debugger quit command
Set the stopped flag for the debugger proxy when it receives a quit command, so that the proxy exits a bit quicker and cleaner. Add a timeout to the cleanup quite of test_debugger, so that it does not hang when a test goes wrong. Add some more tracing.
2013-05-15 13:05:05 -07:00
aalexandre b3b41e08bb Replaced NULL with nullptr 2013-02-19 06:57:54 -08:00
Owen Yamauchi 26c4d57cfa Replace PAGE_SIZE with sysconf(_SC_PAGESIZE)
PAGE_SIZE isn't portable -- e.g. my ARMv8 sysroot doesn't define it. I'm
replacing it in the way the Linux manpage recommends. This should work
on a wide variety of platforms. For example, it works on OS X.
2013-02-14 06:47:38 -08:00
mwilliams c67d35c50a The trouble with magic numbers...
... is that once you put them into the codebase, the odds of them
showing up where you dont want them go up dramatically.

With a gcc 4.7.1 -O0 build I hit a consistent crash in production
where debugBacktrace had stepped too far, thinking that the
first non-vm frame was in fact a vm frame. It did so because
it looked at the word above the frame, and saw that it contained
c_Continuation::kMagic.

It turns out that fixupWork's isVMFrame left kMagic in $rdx if the
frame really was a generator ($rdx was dead, but still). We then
return from the tc via a serviceReq that doesnt need $rdx (so doesnt
set it), and then (with a following wind, so that $rdx hasnt been
smashed yet) enterTCHelper stores $rdx in info.args[1].

By another staggering coincidence, info.args[1] is at exactly the
right address to make the call into enterTCHelper /look/ like a
a continuation (based on kMagic). So if we then have a catch
which re-enters the TC there's a good chance kMagic is still there
and the next debugBacktrace (or uncaught exception) will crash.

This diff rewrites everything in terms of the C++ stack; we
now say that its a VM frame if its not on the C++ stack.
2013-02-11 03:44:06 -08:00
Jordan Delong 363d1bb20f Code move src/ -> hphp/
This change is mostly for FB internal organizational reasons.
Building is not effected beyond the fact that the target now
lands in hphp/hhvm/hhvm rather than src/hhvm/hhvm.
2013-02-11 02:10:41 -08:00